URMET FAQ
v1.0beta
(c) Warsaw 03.07.1998 Shroom Inc.
psilo & cybe
[ e-mail: shroom26@hotmail.com ]
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
1. Budka w calosci
- zabezpieczenia mechaniczne budki
- SOS do centrali
2. Budka w kawalkach
- plyta glowna
- modul czytnika
8. Software w EPROM'ach
- plyta glowna
- modul czytnika
4. Karty telefoniczne
5. Inne
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
1. Budka w calosci
~~~~~~~~~~~~~~~
*** zabezpieczenia mechaniczne budki
Zdecydowalem sie pominac ten punkt bo wszyscy juz o tym wiedza ze
budka jest zamykana na zamek typu ABLOY a wsrodku jest czujnik otwarcia
budki.Gdy budke zamkniemy budka powiadamia natychmiast centrale
ze ktos ja otwieral.
Jesli chodzi o kluczyki ABLOY to ktos wymyslil notacje cyfrowa
dla kluczykow.BArdzo dobrym sposobem na odczyt tej notacji jest
posluzenie sie zamkiem z niebieskiego URMET'a.
Przykladowo kluczyk do otwierania niebieskiego URMET'a
liczac od glowki kluczka ma notacje:
00013100
Inne ciekawe kluczyki to:
30232120 - nikt narazie nie wie do czego jest ten kluczyk,
no moze poza TPSA; niewykluczone ze fake,ale mialem go
w lapce , komu by sie chcialo taki kawal robic
00021000 - puszka na zetony w starych telefonach
Srebrnego na wszelki wypadek nie podam.Nie jest nawet sprawdzony.
*** SOS do centrali
Budka gdy sie jak otworzy a potem zamknie zaczyna komunikowac sie
z centrala.Do polaczenia jak i calej komunikacji uzywa sygnalow DTMF.
Na zyczenie sluze zapisem takiej komunikacji w formacie wav.
Zupelnie podobnie wyglada standardowe rutynowe zglaszanie sie budki do
centrali w ciagu dnia.
Poczatek wybierania numery to 2 , potem A a potem numer centrali.
Przykladowe numery central w Warszawie to 6642099 lub 6642098.
Po drugim ringu zestawiane jest polaczenie i centrala wysyla 9 szybkich
wysokich tonow.Normalnie po pierwszym zaczyna sie koumunikacja.
Gdy budce nie uda sie dodzwonic po pewnym czasie wysyla 5 raz *
i dzwoni ponownie.
Analiza komuniakacji miedzy budka a centrala w toku.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
2. Budka w kawalkach
~~~~~~~~~~~~~~~~~
Cala elektronika niebieskiego URMET'a to dwie plyty plus kilka
peryferiow.Dwie najwazniejsze czesci to plyta glowna oraz plyta od
modulu czytnika (badane przez nas to wersja 2.9 i 2.8).
Peryferia podlaczone do plyty glownej to klawiatura matrycowa,
wyswietlacz cieklokrystaliczny 16 x 1 znakow (5 x 7 pixeli) z ukladem
HD44780A00 , buzzer , sluchawka , czujnik podniesienia sluchawki ,
czujnik otwarcia budki , przycisk redial.Schemat polaczen wraz z
wizerunkiem plyty glownej na zalaczonym obrazku.
Peryferia podlaczone do plyty w module czytnika to silnik do otwierania
wejscia dla karty ( +3V zamykanie , -3V otwieranie) , silnik do
przesuwania karty w calym mechanizmie (15V) , glowica do odczytu ,
glowica do kasowania oraz cztery czujniki do okreslenia pozycji karty
w jej wedrowce.No i elktromagnes do mechanicznego niszczenia karty.
Modul glowny i modul czytnika polaczone sa dziesieciozylowym kablem.
Od strony plyty glownej:
-------____-------
| 1 2 3 4 5 |
| 6 7 8 9 10 |
------------------
1 - PA0/IC3 (linia 0 portu A/Input Compare 3)
2 - PE1/AN1 (linia 1 portu E)
3 - Vdd (+5V)
4 - Vss (GND)
5 - ?
6 - PA4/OC4/OC1
7 - ?
8 - Vdd (+5V)
9 - Vss (GND)
10 - PE6/AN6
Od strony czytnika 10 pin jest nie uzywany.
*** modul glowny
Sercem modulu glownego jest mikrokontroler Motorola MC68HC11A1FN
(jak wskazuje koncowka FN w 52 pinowej obudowie typu PLCC).
Jest to 8 bitowy mikrokontroler z 16 bitowa szyna adresowa.
Procesor ma dolaczony zewnetrzny kwarc 2.000 MHz, a wiec szyna
jest taktowana z czestotliwoacia 0.5 MHz (E clock).
Model A1 kontrolera HC11 nie zawiera wlasnego ROMu , EPROMu ani OTPROMu.
Posiada natomiast wewnatrz miedzy innymi 256 bajtow RAMu , 512 bajtow
EEPROMu , 8-bitowy 8-kanalowy konwerter analogowo-cyfrowy,
port szeregowy do synchronicznej komunikacji (SPI - Serial Peripheral
Interface),port szeregowy do komunikacji asynchronicznej ( SCI - Serial
Communications Interface) , timer z trzema rejestrami IC (input
compare) i piecioma rejestrami OC (output compare).
Z wazniejszych ukladow na plycie znalezc mozemy ponaddto 32k EPROM
(27c256) oraz 8k RAM ( TOSHIBA TC5565APL-15L).
Pelny spis chipow z nazwa i opisem funkcji:
MC68HC11A1FN - mikrokontroler , serce plyty glownej
M27C256B - 32k EPROM
TC5565APL-15L - 8k SRAM (Toshiba)
PCF8583P - clock/calendar (Philips) - zegar czasu rzeczywistego,
z wlasnym RAMem (256 bajtow) i wlasnym kwarcem,
komunikuje sie z procesorem po szynie i2c
(podlaczone do procesora na wejscia rx i tx)
MT8880AE - DTMF transceiver - wiadomo po co :)
MC74HC273N (x3) - CMOS Octal D-type Flip-Flop w/RESET
zatrzask do multiplexowania danych
MC74HC244AN - CMOS Octal-buffer Line Driver
jednokierunkowy bufor trojstanowy
funkcja podobna jak powyzej
SN74HC138N - CMOS 3-to-8 Line Decoder/Demultiplexer
do dekodowania adresow
MC74HC139AN - CMOS Dual 2-To-4 Line Decoder
takze do dekodowania adresow
SN74HC14N - CMOS Hex Inverting Schmitt Trigger
tak naprawde to 6 zwyklych bramek NOT
MC74HC132AN - CMOS Quad 2-Input NAND Schmitt Trigger
4 bramki NAND
CD4066BCN (x2) - CMOS Quad Switch
HCF40106BE - Hex inverters with schmitt-trigger inputs
mozna uzywac zamaist 74HC14 lub 74HC04
CNY17-3 (x2) - phototransistor optocoupler (Siemens)
w srodku dioda elektroluminescencyjna i
fototranzystor,jako szybki przelacznik
LS356B - Telephone Speech Circuit
LP324N - Micropower Quad Operational Amplifier
Na plycie glownej jest kilka zlacz.Oprocz opisane wyzej zlacza J7
laczacego plyte glowna z czytnikiem godne uwagi sa:
* zlacze J1 - biegnace do klawiatury matrycowej,wyswietlacza
cieklokrystalicznego i przyciksu redial
---------------____--------------
| 1 2 3 4 5 6 7 8 9 10 |
| 11 12 13 14 15 16 17 18 19 20 |
---------------------------------
1 - klawiatura matrycowa, kolumna pierwsza (1,4,7,*)
2 - klawiatura matrycowa, rzad pierwszy (1,2,3)
3 - klawiatura matrycowa, rzad drugi (4,5,6)
4 - klawiatura matrycowa, rzad trzeci (7,8,9)
5 - klawiatura matrycowa, rzad czwarty (*,0,#),takze redial
6 - D0 dla LCD
7 - D2 dla LCD
8 - E dla LCD
9 - RS dla LCD
10 - Vdd (zasilanie +5V)
11 - NC (nieuzywany)
12 - klawiatura matrycowa, kolumna druga (2,5,8,0)
13 - klawiatura matrycowa, kolumna trzecia (3,6,9,#)
14 - redial
15 - NC (nieuzywany)
16 - D1 dla LCD
17 - D3 dla LCD
18 - R/W dla LCD
19 - NC (nieuzywany)
20 - GND
* zlacze w klawiaturze matrycowej
uzywane tylko piny 1,2,3,4,5,12 i 13 , funkcja jak wyzej
* zlacze w wyswietlaczu cieklokrytalicznym
_____________________________________________
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
---------------------------------------------
1 - Vss (GND)
2 - Vdd (zasilanie +5V)
3 - Vee (Liquid crystal drive,mozna tym regulowac kontrast
w wyswietlaczu,przewaznie napiecie miedzy GND a +5V,
tu: nieuzywane)
4 - RS (wybor rejestru ; gdy 1 - dane,gdy 0 - instrukcje)
5 - R/W (odczyt/zapis ; gdy 1 - odczyt,gdy 0 - zapis)
6 - E (enable ; aktywowanie chipa)
7 - D7 (tu: nieuzywane)
8 - D6 (tu: nieuzywane)
9 - D5 (tu: nieuzywane)
10 - D4 (tu: nieuzywane)
11 - D3 |
12 - D2 |
13 - D1 | szyna danych
14 - D0 |
*** modul czytnika
Sercem modulu czytnika jest mikrokontroler Motorola MC146805E2CP
w 40 pinowej obudowie DIP oraz 32k EPROM (27c256).
Pelny spis chipow z nazwa i opisem funkcji:
MC146805E2CP - mikrokontroler , serce czytnika
M27C256B - 32k EPROM
MC74HC273N - CMOS Octal D-type Flip-Flop w/RESET
zatrzask do multiplexowania danych/adresow
MC74HC244N - CMOS Octal-buffer Line Driver
jednokierunkowy bufor trojstanowy
funkcja podobna jak powyzej
MC74HC175N - CMOS Quad D-Type Flip-Flops
i jeszcze jeden zatrzask ,albo jak ktos woli
kolejny przerzutnik typu D wyzwalany zboczem :)
SN74HC138N - CMOS 3-to-8 Line Decoder/Demultiplexer
do dekodowania adresow
SN74HC14N - CMOS Hex Inverting Schmitt Trigger, 6 x NOT
MC74HC4075N - CMOS Triple 3-Input OR Gate, 3 x trojwejsciowy OR
HCF40106BE - CMOS Hex Schmitt Triggers
SN74HC02N - CMOS Quad 2-Input NOR Gate
LP339N - Quad Voltage Comparator
Na dodatkowej plytce,ukrytej pod miedzianym radiatorem tez jest kilka
chipow montowanych tym razem powierzchniowo:
[...]
Oto spis zlacz od modulu czytnika:
J1 - opisany powyzej , laczy modul czytnika zplyta glowna
J2 - silniczek do otwierania wejscia dla karty
J3 - fotokomorka (wejscie karty)
J4 - fotokomorka (poczatek odczytu)
J5 - glowica czytajaca
J6 - glowica kasujaca
J7 - nieuzywane
J8 - fotokomorka (koniec odczytu)
J9 - fotokomorka (wyjscie karty)
J10 - silnik napedzajacy mechanizm przesuwu karty
J11 - elektromagnes od mechanizmu niszczacego karte
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
8. Software w EPROM'ach
~~~~~~~~~~~~~~~~~~~~
A wiec mamy dwa oddzielne programy w dwuch epromach.Jeden z nich
steruje calym automatem,drugi zas odpowiady tylko za odczyt kart
magnetycznych (i sprawdzenie ich poprawnosci).
*** plyta glowna
Na plycie glownej mamy procesor hc11 z 16 bitowa szyna adresowa
(przestrzen adresowa 64k) i osmiobitowa szyne danych.
Prowizoryczna mapa pamieci uzyskana porzez odworzenie schematu ideowego
plyty i analize owego schematu:
0000-00ff wewnetrzny RAM (256 bajtow)
1000-103f rejestry wewnetrzne procesora
2000-23ff mirrorwany 1024 razy bajt,uzywany przewaznie 2000,bity:
0 - ?
1 - ?
2 - ?
3 - ?
4 - kolumna pierwsza klawiatury
5 - kolumna druga klawiatury
6 - kolumna trzecia klawiatury
7 - redial
2400-27ff mirrorwany 1024 razy bajt,uzywany przewaznie 2400,bity:
0 - ? do J2
1 - ? do J2
2 - ? do J3
3 - ?
4 - rzad czwarty klawiatury,redial
5 - rzad trzeci klawiatury
6 - rzad drugi klawiatury
7 - rzad pierwszy klawiatury
2c00-2fff mirrorwany 1024 razy bajt,uzywany przewaznie 2c00,bity:
0 - ?
1 - on/off DTMF transceivera :)
2 - RS od LCD
3 - E od LCD
4 - D3 od LCD
5 - D2 od LCD
6 - D1 od LCD
7 - D0 od LCD
3400-37ff dwa bajty mirrorowane 512 razy,uzwane przewaznie:
3400 - odczyt: rejestr danych receivera
zapis: rejestr danych transmitera
3401 - odczyt: rejestr stanu (status register)
zapis: 2 rejestry kontrolne (CRA & CRB)
bity:
0 - D0 dla DTMF transceivera
1 - D1 dla DTMF transceivera
2 - D2 dla DTMF transceivera
3 - D3 dla DTMF transceivera
4:7 - nieuzywane
4000-5fff ram (8k)
6000-7fff ram (8k),drugi raz ten sam RAM, mirror
8000-ffff eprom (32k)
b600-b7ff 512 bajtow wewnetrznego EEPROMu
bfc0-bfff tablica wektorow dla trybu special test
ffc0-ffff tablica wektorow dla trybu normal & extended
Procesor normalnie w URMETach startuje w trybie extended (pin MODA
podlaczony do +5V).Natomiast po zwarciu jumpera W1 (pin MODB podlaczony
do +5V) startuje w trybie special test.
EPROM jest w bardzo sprytny sposob kodowany.Zamienione sa kolejnoscia
piny wychodzace z ukladu 74hc273 i wchodzace na wejscie danych do
epromu.A wiec jest jakis rodzaj sprzetowego "kodowania".
Sa dwa sposoby na obejscie tego.Albo ustawiamy odpowiednia zamiane
wejsc w programie obslugujacym programmator epromow,albo mozemy sie
posluzyc malym programikiem ktory ponizej zamieszczam.
Przyda sie on tym ktorzy maja zgrane normalnie epromy lub posluguja sie
tymi ktore mozna znalezsc w sieci.Oznaka ze udalo sie nam poprawnie
zdekodwac eprom bedzie to iz w zdekodwanym epromie pojawia sie
mniej lub bardziej znajome stringi.
--->8----- cut here --------------------------------------[urmet.c]---------
/*
* Program to decoding URMET eprom dumps
* (c) Warsaw 1998 Cybe of Shroom Inc.
* compile: gcc -o urmet urmet.c -lm
*/
#include
#include
#include
#include
#include
#include
#include
int main(int argc,char **argv){
/* permutation table */
int s[8] = { 3 , 2 , 4 , 1 , 5 , 0 , 7 , 6 };
int in,out,eof,i;
unsigned char ch,ch2;
if(argc!=3){
printf("USAGE: %s